The present invention relates to batch job processing and, more particularly, to a more holistic approach to batch job processing that simplifies batch job creation, improves user understanding of batch job status and prevents unwanted batch job printing outcomes.
Users who have multiple files that require printing often submit the multiple files as a single batch job. When the component files of a batch job have different characteristics (e.g. formats, print settings), the imaging device to which the batch job is submitted from the user's client device may be able to print only the subset of files from the batch job whose characteristics are supported on the imaging device. Such partially supported batch jobs are handled in several ways depending on the method used to submit the batch job.
In an email printing method, a user submits a batch job as an email message having multiple attached files. The imaging device outputs the supported attachments and skips the unsupported attachments. Accordingly, part of the batch job is printed and part is not, and the imaging device generally does not notify the user as to which attachments from the batch job were printed and which were skipped.
In a Printer Job Language (PJL) separation printing method, a user submits a batch job as a single spool file that includes several documents separated from each other by a PJL header/footer that defines document boundaries. The imaging device outputs the documents serially until the imaging device reaches an unsupported document, at which point processing is terminated. Accordingly, part of the batch job is printed and part is not, and all supported documents are not necessarily printed. Moreover, the imaging device does not generally notify the user which documents from the batch job were printed before processing was terminated.
In a compressed archive printing method, a user submits a batch job as a compressed archive (e.g. zip file) that includes several files. The imaging device determines which files are natively supported by the imaging device and which can be translated into a format supported by the imaging device. Files which are natively supported or translatable into a supported format are printed whereas unsupported files are skipped. Accordingly, part of the batch job is printed and part is not, and the imaging device does not generally notify the user as to which files from the batch job were printed and which were skipped.
In a Web Services (WS) Print method, a user's client device creates a container for a batch job by transmitting a CreatePrintJob message to a WS Print service on an imaging device. The client device then attempts to add multiple documents to the batch job by transmitting to the WS Print service an AddDocument request message for each document. The WS Print service grants requests to add documents that are supported and rejects requests to add documents that are not supported. When there are no more documents to add, the client device transmits to the WS Print service a message indicating to print the batch job and the imaging device prints the batch job. The method requires a batch job container to be created and a request-and-grant message exchange for each document in order for the user to discover which documents have been successfully added to the batch job. Moreover, the method does not support certain legacy batch job printing methods, such as email print, File Transfer Protocol (FTP) print, line printer remote (LPR) print and Universal Serial Bus (USB) print.